One major focus of providing content and services over the Internet is the configuration of the Internet network and systems to provide responses to requests for content and services over a wide ranging geographic area. Servers providing content and/or services may be strategically located near clients requesting the content and/or services. Another such example of server traffic management is the concept of a server redirecting client requests to a secondary server that may be more convenient for providing the requested content. The secondary server, in that case, may contain a copy of the originally-requested content with which the secondary server may fulfill the client request.
In some cases, such traffic management has less to do with managing network facilities or managing the closeness and speed of a server responding to a content request than it does managing the capacity of servers providing the content and/or services. For example, in some cases, when the volume of requests is too great to be served by one server, multiple servers may contain duplicate copies of content used to fulfill content requests. Another device is responsible for either intercepting or receiving a content request, then deciding, based on an algorithm of some sort, which of the multiple servers containing the content should be tapped to fulfill the content request. The device then forwards a request to the chosen server to provide the requested content. In that situation, the device is reducing the workload of one server by causing client requests to be fulfilled from the other duplicate server. In some situations, the device balances workload between many duplicate servers.
In different circumstances, forwarding devices may forward client requests to different servers using any of a variety of mechanisms. One such mechanism used is for the device to read a uniform resource locator (URL) and use all or part of the URL to make a determination where the client request should be served from. The device may use tables or other information, as well, in making that determination. In other systems, the forwarding device may read user identification information such as “cookies” or transmission information such as TCP/IP header information, etc. in order to facilitate the determination of which server to forward to.
HyperText Markup Language (HTML) is a document control language that has been an important tool in the development of the Internet by providing a simple, though elegant way of formatting data so that it can be viewed on virtually any computer. Extensible Markup Language (XML) extends the capability of HTML beyond its format-oriented functioning into the role of providing additional information about a document's data, thereby permitting re-use of the data in different situations. In XML, data are stored in the form of elements, each delimited by tags. The tags identify the elements of data and separate individual elements from each other. XML also provides a feature, called a namespace, which provides a mechanism to distinguish between elements with the same name that are derived from different sources. Accordingly, a namespace name is designated to identify a particular set of elements. In that way it is possible to distinguish between elements from different namespaces that may have a different meaning even though they have the same element name.